/*************************************************************************
 *
 * hodiny realneho casu
 * 
 * (c) Ales Povalac, alpov@alpov.net, http://www.alpov.net/
 * 
 *************************************************************************
 *
 * $Id: rtc.c 62 2006-07-27 16:54:30Z alpov $
 * 
 *************************************************************************/         

#include <stdint.h>
#include <avr/interrupt.h>
#include "../avrx/avrx.h"
#include "../avrx/AvrXFifo.h"
#include "rtc.h"
#include "data.h"


/*************************************************************************
 * inicializace hodin - hardware
 *************************************************************************/ 
void InitRTC(void)
{
    TCCR1A = 0;
    TCCR1B = _BV(WGM12) | _BV(CS11) | _BV(CS10);
    OCR1A = 62500 + AvrXReadEEProm(&eedata.rtc_deviation);
    TIMSK |= _BV(OCIE1A);
}


/*************************************************************************
 * interrupt sekundy
 *************************************************************************/ 
AVRX_SIGINT(TIMER1_COMPA_vect)
{
    IntProlog();
    rwdata.now++;
    Epilog();
}

